package com.aurora.app.util;

import java.util.HashMap;
import java.util.Map;

import com.alibaba.fastjson.JSON;

/**
 * 标准的返回体格式
 * @author win64
 *
 */
public class StandardResponseBody {
	/**
	 * 默认返回格式
	 * STATUS:OK/ERR
	 * DESC：desc
	 * maps 格外参数
	 * @param type 0 err;1 ok
	 * @param desc
	 * @param maps
	 * @return
	 */
	public static final String Default(int type,String desc,Map<String,Object> map){
		Map<String,Object> modelMap = new HashMap<String,Object>();
		switch(type){
		case 0:{
			modelMap.put("STATUS", "ERR");
			modelMap.put("DESC", desc);
			return JSON.toJSONString(modelMap);
		}
		case 1:{
			modelMap.put("STATUS", "OK");
			modelMap.put("DESC", desc);
			break;
		}
		}
		if(map!=null){
			modelMap.putAll(map);
		}
		
		return JSON.toJSONString(modelMap);
	}
	
	/**
	 * 带分页的默认返回格式
	 * STATUS:OK/ERR
	 * DESC：desc
	 * PAGENUM：1
	 * TOTALPAGE:5
	 * maps 格外参数
	 * @param type
	 * @param desc
	 * @param pageNum
	 * @param totalPage
	 * @param maps
	 * @return
	 */
	public static final String withPages(int type,String desc,int pageNum,boolean isLast,Map<String,Object> map){
		Map<String,Object> modelMap = new HashMap<String,Object>();
		switch(type){
		case 0:{
			modelMap.put("STATUS", "ERR");
			modelMap.put("DESC", desc);
			break;
		}
		case 1:{
			modelMap.put("STATUS", "OK");
			modelMap.put("DESC", desc);
			break;
		}
		}
		modelMap.put("PAGENUM", pageNum);
		modelMap.put("isLast", isLast);
		if(map!=null){
			modelMap.putAll(map);
		}
		return JSON.toJSONString(modelMap);
	}
}
